<?php
/*
	Aurus CMS - free OOP CMS
	Copyright (C) 2010  Nestor Yanchuk

	This program is free software: you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation, either version 2 of the License, or
	(at your option) any later version.

	This program is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License
	along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/
if (!defined('ROOT')) die();
if (isset($_GET['editUser'])) {
	$id = $_GET['editUser'];
	if (isset($_POST['login'])) {
		if ($_POST['login'] == Users::getInstance()->getUserData('login', $id)) {
			$check = false;
		} else {
			$check = Users::getInstance()->check_exist($_POST['login']);
		}
		if (!Users::getInstance()->isValidName($_POST['login']) or $check) {
			Aurus::getInstance()->addContent(Adminarea::getInstance()->adminInfo(__('Такий користувач вже існує, або в логіні присутні заборонені символи')));
		} else {
			$update = array('login' => $_POST['login'], 'email' => isValidEmail($_POST['email']) ? $_POST['email'] : Users::getInstance()->getUserData('email', $id), 'icq' => Mysql::getInstance()->escape($_POST['icq']), 'group' => $_POST['group'], 'signature' => Mysql::getInstance()->escape(Parser::getInstance()->parse($_POST['signature'])), 'about' => Mysql::getInstance()->escape(Parser::getInstance()->parse($_POST['about'])), );
			Mysql::getInstance()->update('users', $update, 'uid=' . $id);
			Aurus::getInstance()->addContent(Adminarea::getInstance()->adminInfo(__('Інформацію оновлено')));
		}
	} else {
		$group = '<select name="group">';
		$gs = Users::getInstance()->getUserGroups();
		foreach ($gs as $gid => $grp) {
			if (Users::getInstance()->getUserData('group', $id) == $gid) {
				$sel = 'selected="selected" ';
			} else {
				$sel = '';
			}
			$group .= '<option ' . $sel . 'value="' . $gid . '">' . $grp['groupname'] . '</option>';
		}
		$group .= '</select>';

		Aurus::getInstance()->addContent(
		Aurus::getInstance()->form_start() . 
		Html::table(Html::tr(Html::td(__('Логін'), '', 'left', '10%') . 
		Html::td('<input type="text" name="login" value="' . Users::getInstance()->getUserData('login', $id) . '"/>', '', 'center', '90%')) . 
		Html::tr(Html::td(__('Адреса електронної скриньки'), '', 'left', '10%') . 
		Html::td('<input type="text" name="email" value="' . Users::getInstance()->getUserData('email', $id) . '"/>', '', 'center', '90%')) . 
		Html::tr(Html::td(__('Номер ICQ'), '', 'left', '10%') . 
		Html::td('<input type="text" name="icq" value="' . Users::getInstance()->getUserData('icq', $id) . '"/>', '', 'center', '90%')) . 
		Html::tr(Html::td(__('Група користувача'), '', 'left', '10%') . Html::td($group, '', 'center', '90%')) . Html::tr(Html::td(__('Підпис'), '', 'left', '10%') . 
		Html::td(Aurus::getInstance()->getEditor() . '<textarea id="id" style="width:100%;height:200px" name="signature">' . Parser::getInstance()->unParseBB(stripslashes(Users::getInstance()->getUserData('signature', $id))) . '</textarea>', '', 'center', '90%')) . 
		Html::tr(Html::td(__('Про себе'), '', 'left', '10%') . Html::td(Aurus::getInstance()->getEditor() . '<textarea id="idi" style="width:100%;height:200px" name="about">' . Parser::getInstance()->unParseBB(stripslashes(Users::getInstance()->getUserData('about', $id))) . '</textarea>', '', 'center', '90%'))) . '<center><input type="submit" value="' . __('Зберегти') . '" /></center></form>');
	}
} elseif (isset($_GET['deleteUser'])) {
	if ($_GET['deleteUser'] > 1) {
		Mysql::getInstance()->delete('users', 'uid=' . $_GET['deleteUser']);
		Aurus::getInstance()->addContent(Adminarea::getInstance()->adminInfo(__('Користувач видалений')));
	} else {
		Aurus::getInstance()->addContent(Adminarea::getInstance()->adminInfo(__('Видалення цього користувача неможливе')));
	}
} else {
	if (isset($_POST['search']) && strlen(trim($_POST['search'])) > 0) {
		$srch = Mysql::getInstance()->escape($_POST['search']);
		switch ($_POST['by']) {
			case 'login':
				$where = isset($_POST['exact']) ? 'login=\'' . $srch . '\'':
				'login LIKE \'%' . $srch . '%\'';
				break;
			case 'mail':
				$where = isset($_POST['exact']) ? 'email=\'' . $srch . '\'':
				'email LIKE \'%' . $srch . '%\'';
				break;
			case 'icq':
				$where = isset($_POST['exact']) ? 'icq=\'' . $srch . '\'':
				'icq LIKE \'%' . $srch . '%\'';
				break;
			default:
				die('Error');
				break;
		}
		$udata = Mysql::getInstance()->select('users', '*', $where);
	} else {
		if (isset($_POST['search'])) {
			Aurus::getInstance()->addContent('<strong>' . __('Ви нічого не ввели для пошуку') . '</strong><hr />');
		}
		$udata = Mysql::getInstance()->select('users', '*', PREFIX . '_users.group IN(1,2)', '15');
	}
	$rows = Html::tr(Html::td('ID', 'chead', 'left', '3%') . Html::td('', 'chead', 'left', '6%') . Html::td(__('Логін користувача'), 'chead', 'left', '15%') . Html::td(__('Електронна адреса користувача'), 'chead', 'left', '15%') . Html::td(__('ICQ номер користувача'), 'chead', 'left', '15%') . Html::td(__('Група користувача'), 'chead', 'left', '15%') . Html::td('', 'chead', 'right', '31%'));
	foreach ($udata as $us) {
		$rows .= Html::tr(Html::td($us['uid'], 'confclass', 'left', '3%') . Html::td('<img width="25px" src="' . (!empty($us['avatar']) ? LINK_ROOT . $us['avatar'] : Users::getInstance()->noavatar) . '"/>', 'confclass', 'left', '6%') . Html::td($us['login'], 'confclass', 'left', '15%') . Html::td($us['email'], 'confclass', 'left', '15%') . Html::td($us['icq'], 'confclass', 'left', '15%') . Html::td(Users::getInstance()->getGroupData('groupname', $us['group']), 'confclass', 'left', '15%') . Html::td('<a href="' . LINK_ROOT . 'adminarea/?do=users&amp;editUser=' . $us['uid'] . '">' . __('Змінити') . '</a> | <a href="' . LINK_ROOT . 'adminarea/?do=users&amp;deleteUser=' . $us['uid'] . '" onclick="return confirm(\'' . __('Видалити цього користувача? (Ця дія безповоротна!)') . '\')">' . __('Видалити') . '</a>', 'confclass', 'right', '31%'));
	}
	Aurus::getInstance()->addContent(Aurus::getInstance()->form_start() . Html::table(Html::tr(Html::td(__('Шукати за:')) . Html::td('<select name="by">
	<option value="login">' . __('Шукати за логіном') . '</option>
	<option value="mail">' . __('Шукати за електронною адресою') . '</option>
	<option value="icq">' . __('Шукати за номером ICQ') . '</option>
	</select>')) . Html::tr(Html::td(__('Введіть логін, адресу електронної пошти чи номер icq')) . Html::td('<input type="text" name="search" />')) . Html::tr(Html::td(__('Точний пошук?')) . Html::td('<input type="checkbox" name="exact"/>'))) . '<center><input type="submit" value="' . __('Вперед') . '"</center></form>');
	Aurus::getInstance()->addContent('<hr />' . Html::table($rows));
}